In many situations, textual data needs to be verified and elements of interest within the text need to be extracted. Some common examples include verifying the output generated by an application and picking out variables that need to be validated in areas like software testing, analyzing a log file generated by an application, extracting diagnostic information for identifying reasons for failures in Product Support Services, and extracting information from the output of an application while developing scripts for administrative Information Technology (IT) tasks.
Existing mechanisms for text verification are inadequate. First, text is localized into many languages. Any verification code that depends on the specific text needs to be changed/re-implemented for each language, making it costly. Such verification code also scales poorly as the number of languages text is localized to increases. Second, the stability of such verification code is low because there can be ambiguity in where the elements of interest start and end in the text. In such situations, the verification code will fail.